It is known that a group of computing resources that perform one or more related functions may be referred to as a “computing center.” Typically, a computing center may be composed of a number of processor resources (e.g., servers), disk storage, applications, software tools, and internal communication links between the various devices and with the external clients. Clients send their jobs to the system through an external network and jobs are queued and processed through the system. Results may be received by clients during the process or only at the end of the process. Computing centers may take on a number of forms such as, for example, web server farms, scientific computing centers, or on-demand facilities for general computing use.
It would be desirable for resource management systems associated with such computing centers to take into account the varying requirements of different customers (clients), and the different levels of service that were promised to each client.
Currently, resource management in computing centers attempts to satisfy constraints associated with the computing needs of the current clients of the system. However, no existing resource management system associated with such computing centers incorporates yield management techniques. In particular, there is no such system that considers global objectives and makes use of a possibly high degree of price and demand segmentation to achieve those objectives and links them with the operation (e.g., resource allocation, scheduling, monitoring) of the computing center.
Thus, a need exists for improved resource management techniques associated with computing centers.